package com.zhang.sharding.entity;

import com.fasterxml.jackson.annotation.JsonFormat;
import com.zhang.sharding.enums.EventLogStatus;
import com.zhang.sharding.enums.GlobalEventType;
import lombok.Data;
import org.springframework.format.annotation.DateTimeFormat;

import java.io.Serializable;
import java.util.Date;

/**
 * 事件处理日志对象 global_event_log
 *
 * @author Jayden
 * @date 2024-07-06
 */
@Data
public class GlobalEventLog implements Serializable {

    private static final long serialVersionUID = 1L;

    /**
     *
     */
    private Long id;

    /**
     * 事件类型
     */
    private GlobalEventType eventType;

    /**
     * 事件号
     */
    private String seqNo;

    /**
     * 事件来源
     */
    private String triggerModule;

    /**
     * 记录模块
     */
    private String recordModule;

    /**
     * 处理状态
     */
    private EventLogStatus status;

    /**
     * 事件参数
     */
    private String inParams;

    /**
     * 下一跳参数
     */
    private String outParams;

    /**
     * 事件接收时间
     */
    @DateTimeFormat(pattern = "yyyy-MM-dd HH:mm:ss")
    @JsonFormat(pattern = "yyyy-MM-dd HH:mm:ss")
    private Date acceptTime;

    /**
     * 完成时间
     */
    @DateTimeFormat(pattern = "yyyy-MM-dd HH:mm:ss")
    @JsonFormat(pattern = "yyyy-MM-dd HH:mm:ss")
    private Date finishTime;

    /**
     * 错误日志
     */
    private String errorLog;

    /**
     * 备注
     */
    private String remark;


}
